15 research outputs found

    Käden konfiguraatioiden estimointi viittomakielisistä videoista

    Get PDF
    A computer vision system is presented that can locate and classify the handshape from an individual sign-language video frame, using a synthetic 3D model. The system requires no training data; only phonetically-motivated descriptions of sign-language hand configuration classes are required. Experiments were conducted with realistically low-quality sign-language video dictionary footage to test various features and metrics to fix the camera parameters of a fixed synthetic hand model to find the best match of the model to the input frame. Histogram of Oriented Gradients (HOG) features with Euclidean distance turned out to be suitable for this purpose. A novel approach, called Trimmed HOGs, with Earth Mover's Distance, as well as simplistic contours and Canny edges with the chamfer distance, also performed favorably. Minimizing the cost function built from these measures with gradient descent optimization further improved the camera parameter fitting results. Classification of images of handshapes into hand configuration classes with nearest-neighbor classifiers built around the chamfer distance between contours and Canny edges, and chi^2 distance between Pyramidal HOG descriptors turned out to yield reasonable accuracy. Although the system displayed only moderate success rates in a full 26-class scenario, the system was able to reach nearly perfect discriminatory accuracy in a binary classification case, and up to 40 % accuracy when images from a restricted set of 12 classes were classified into six hand configuration groups. Considering that the footage used to evaluate the system was of very poor quality, with future improvements, the methods evaluated may be used as basis for a practical system for automatic annotation of sign language video corpora.Työssä esitetään tietokonenäköjärjestelmä, joka pystyy löytämään ja luokittelemaan käsimuotoja yksittäisistä viittomakielisten videoiden ruuduista synteettistä 3D-mallia käyttäen. Järjestelmä ei vaadi opetusdataa; pelkät foneettisesti motivoidut kuvaukset käden konfiguraatioluokista riittävät. Kokeissa testattiin erilaisia piirteitä ja metriikoita staattisen käsimallin kameraparametrien kiinnittämiseksi, jotta löydettäisiin paras vastaavuus mallin ja syötekuvan välillä. Kokeet ajettiin realistisen heikkolaatuisella videoaineistolla. Gradienttihistogrammit euklidisella etäisyydellä osoittautuivat sopiviksi tähän tarkoitukseen. Uusi työssä esitetty lähestymistapa, jota kutsutaan trimmatuksi gradienttihistogrammiksi, maansiirtäjän etäisyyden (Earth Mover's Distance) kanssa toimi myös hyvin, kuten myös yksinkertaiset ääriviivat ja Canny-reunat chamfer-etäisyyden kanssa. Gradienttilaskeumaoptimointi (gradient descent optimization) paransi kameraparametrien sovitustuloksia. Syötekuvia luokiteltiin lähimmän naapurin luokittimilla, ja ääriviiva- ja Canny-reunapiirteiden chamfer-etäisyyteen sekä pyramidisten gradienttihistogrammien chi^2-etäisyyteen pohjautuvat luokittimet osoittautuivat toimiviksi. Vaikka järjestelmän luokittelutarkkuus jäi vaatimattomaksi täydessä 26 luokan tapauksessa, järjestelmä saavutti liki täydellisen luokittelutarkkuuden binääriluokittelutapauksessa, ja saavutti jopa 40 % tarkkuuden, kun 12 luokan osajoukosta poimittuja kuvia luokiteltiin kuuteen eri ryhmään. Ottaen huomioon aineiston heikosta laadusta johtuvan vaativuuden, voidaan pitää uskottavana, että esitettyjä menetelmiä voidaan käyttää käytännöllisen korpusaineiston automaattiseen annotointiin soveltuvan järjestelmän pohjana

    Explicit Correlation Amplifiers for Finding Outlier Correlations in Deterministic Subquadratic Time

    Get PDF
    We derandomize G. Valiant\u27s [J.ACM 62(2015) Art.13] subquadratic-time algorithm for finding outlier correlations in binary data. Our derandomized algorithm gives deterministic subquadratic scaling essentially for the same parameter range as Valiant\u27s randomized algorithm, but the precise constants we save over quadratic scaling are more modest. Our main technical tool for derandomization is an explicit family of correlation amplifiers built via a family of zigzag-product expanders in Reingold, Vadhan, and Wigderson [Ann. of Math 155(2002), 157-187]. We say that a function f:{-1,1}^d ->{-1,1}^D is a correlation amplifier with threshold 0 = 1, and strength p an even positive integer if for all pairs of vectors x,y in {-1,1}^d it holds that (i) ||| | >= tau*d implies (/gamma^d})^p*D /d)^p*D

    DEANN: Speeding up Kernel-Density Estimation using Approximate Nearest Neighbor Search

    Full text link
    Kernel Density Estimation (KDE) is a nonparametric method for estimating the shape of a density function, given a set of samples from the distribution. Recently, locality-sensitive hashing, originally proposed as a tool for nearest neighbor search, has been shown to enable fast KDE data structures. However, these approaches do not take advantage of the many other advances that have been made in algorithms for nearest neighbor algorithms. We present an algorithm called Density Estimation from Approximate Nearest Neighbors (DEANN) where we apply Approximate Nearest Neighbor (ANN) algorithms as a black box subroutine to compute an unbiased KDE. The idea is to find points that have a large contribution to the KDE using ANN, compute their contribution exactly, and approximate the remainder with Random Sampling (RS). We present a theoretical argument that supports the idea that an ANN subroutine can speed up the evaluation. Furthermore, we provide a C++ implementation with a Python interface that can make use of an arbitrary ANN implementation as a subroutine for KDE evaluation. We show empirically that our implementation outperforms state of the art implementations in all high dimensional datasets we considered, and matches the performance of RS in cases where the ANN yield no gains in performance.Comment: 24 pages, 1 figure. Submitted for revie

    On Bilinear Techniques for Similarity Search and Boolean Matrix Multiplication

    No full text
    Algorithms are the art of efficient computation: it is by the power of algorithms that solving problems becomes feasible, and that we may harness the power of computing machinery. Efficient algorithms translate directly to savings in resources, such as time, storage space, and electricity, and thus money. With the end of the exponential increase in the computational power of hardware, the value of efficient algorithms may be greater than ever. This thesis presents advancements in multiple fields of algorithms, related through the application of bilinear techniques. Functions that map elements from a pair of vector spaces to a third vector space with the property that they are linear in their arguments, or bilinear maps, are a ubiquitous and fundamental mathematical tool, the canonical example being the matrix multiplication. We address both the applications that make use of bilinear maps and the computation of the bilinear maps itself, Boolean matrix multiplication in particular. In the field of similarity search, we improve on Valiant's randomized algorithm [FOCS 2012; J. ACM 2015] for finding correlated vectors by (i) presenting an improved sampling scheme that enables faster processing by using fast matrix multiplication, and (ii) derandomizing Valiant's algorithm. These results are mostly of theoretical nature since they rely on fast matrix multiplication. We also present (iii) an adaptive prefix-assignment method for symmetry breaking. An instantiation of McKay's canonical extension framework [J. Algorithms 1998], the method produces a set of partial assignments with respect to a sequence of a prefix of variables in a system of constraints, such that all generated assignments are pairwise nonisomorphic. The method breaks the symmetries completely with respect to the prefix sequence, and can benefit from an auxiliary representation of symmetries in the form of a colored graph. We also provide an implementation that works as a preprocessor for Boolean satisfiability solvers, and show experimentally that the method is also of practical value and parallelizes well in a distributed computer cluster setting.We address matrix multiplication by (iv) introducing a probabilistic extension of the notions of rank and border rank, and show that, under this notion, the structural tensor for 2×2 matrix multiplication has strictly lower probabilistic tensor rank and border rank than the deterministic rank. We use this fact to derive a randomized algorithm for multiplying two Boolean matrices that is asymptotically faster than Strassen's algorithm [Numer. Math. 1969]. Finally, (v) using the recent result of Karstadt and Schwartz [SPAA 2017], we implement Strassen's multiplication over the binary field in an alternative basis for a multiple-GPU shared-memory system. We evaluate the implementation with one-tebibit input, and show that it exceeds the theoretical peak performance of the elementary algorithm in terms of bit operations, and also offers substantial savings in energy consumption.Tässä väitöskirjassa esitetään tutkimustuloksia useilta algoritmiikan eri osa-alueilta. Näitä tuloksia yhdistävät bilineaaritekniikoiden soveltaminen. Funktiot, jotka kuvaavat alkioita vektoriavaruuspareilta kolmansille vektoriavaruuksille siten, että ne ovat lineaarisia argumenttiensa suhteen, eli bilineaarikuvaukset, ovat läsnä kaikkialla ja keskeisiä matemaattisia työkaluja. Kanoninen esimerkki bilineaarikuvauksesta on matriisikertolasku. Tässä työssä käsitellään sekä sovelluksia, jotka hyödyntävät bilineaarikuvauksia että bilineaarikuvauksien itsensä laskemista, erityisesti Boolen matriisikertolaskun tapauksessa. Samankaltaisuushaun osalta parannetaan Valiantin satunnaistettua korreloituneiden vektoreiden hakualgoritmia [FOCS 2012; J. ACM 2015] (i) esittämällä parannetun näytteistysjärjestelyn, joka mahdollistaa nopeamman käsittelyn nopean matriisikertolaskun avulla ja (ii) poistamalla Valiantin algoritmin satunnaisuuden. Nämä tulokset ovat lähinnä teoreettisia, koska ne nojaavat nopeaan matriisikertolaskuun. Työssä esitetään myös (iii) adaptiivinen prefiksinsijoitusmenetelmä symmetrian särkemiseen. Kyseessä on McKayn kanonisen laajennuksen menetelmän [J. Algorithms 1998] sovellus, joka tuottaa joukon osittaissijoituksia rajoitejärjestelmän muuttujaprefiksisekvenssin suhteen siten, että kaikki generoidut sijoitukset ovat pareittain epäisomorfisia. Menetelmä särkee symmetriat täydellisesti prefiksisekvenssin suhteen ja pystyy hyödyntämään väritetyn graafin muodossa annetusta symmetrioiden apuesityksestä. Menetelmästä on tehty myös implementaatio, joka toimii Boolen toteutuvuusratkaisijoiden esikäsittelijänä, ja työssä osoitetaan kokeellisesti, että menetelmä on sovellettavissa käytännössä ja rinnakkaistuu hyvin hajautetussa laskentaklusterissa. Työssä käsitellään matriisikertolaskua (iv) esittelemällä probabilistinen laajennus rankin ja border rankin käsitteille ja osoittamalla, että 2×2-matriisikertolaskutensorilla on aidosti pienempi probabilistinen rank ja border rank kuin deterministinen rank. Tämän tiedon avulla johdetaan kahden Boolen matriisin kertolaskuun satunnaistettu algoritmi, joka on asymptoottisesti nopeampi kuin Strassenin algoritmi [Numer. Math. 1969]. Lopuksi (v) hyödyntämällä Karstadtin ja Schwartzin tulosta [SPAA 2017] työssä implementoidaan Strassenin kertolasku binäärikunnan yli vaihtoehtoisessa kannassa usean GPU:n jaetun muistin järjestelmässä. Implementaation toimintaa arvioidaan yhden tebibitin syötteellä ja osoitetaan kokeellisesti, että se ylittää naiivin algoritmin teoreettisen huippusuorituskyvyn bittioperaatioiden suhteen ja tarjoaa myös merkittäviä säästöjä energiankulutuksen suhteen

    Matematiikan aineenopettajaopiskelijoiden ohjelmointitaidot

    No full text
    Vuoden 2014 opetussuunnitelmauudistuksessa ohjelmointi tuotiin osaksi peruskoulun oppimäärää kaikilla luokka-asteilla. Uudistuksen yhteydessä ei luotu uutta tietotekniikan oppiainetta, vaan ohjelmointi sijoitettiin osaksi matematiikan sisältöjä, matematiikan aineenopettajien opetusvastuulle. Tässä pro gradu -tutkielmassa kartoitetaan matematiikan aineenopettajaopiskelijoiden ohjelmointitaitoja TPACK-teorian viitekehyksessä teettämällä opiskelijoille lomakekysely, jossa aineenopettajan pedagogisia perusopintoja suorittavia matematiikan aineenopettajaopiskelijoita pyydettiin määrittelemään ohjelmointiin liittyviä keskeisiä käsitteitä, tulkitsemaan ohjelmakoodia ja tuottamaan ohjelmakoodia. Vastauksia saatiin 36 kpl, eli melkein yksi täysi vuosikurssillinen. Vastaajista noin joka neljäs oli suorittanut vähintään perusopinnot tietojenkäsittelytieteessä, mikä oli suoraan kytköksissä hyvään ohjelmointiosaamiseen. Käsitteistä erityisesti algoritmi osoittautui hyvin vaikeaksi määriteltäväksi. Vaikeimpiin koodinlukutehtäviin harvempi kuin joka viides vastaaja osasi vastata hyväksyttävästi. Koodintuottotehtävissä hyväksyttävän vastauksen osasi tuottaa noin neljännes vastaajista. Vastauksissa oli nähtävissä hierarkkinen rakenne: koodintuotto edellytti koodinlukutaitoa. Kyselyn validiteettia arvioitiin teettämällä sama kysely myös pienelle joukolle ammattiohjelmoijia. Ammattiohjelmoijat suoriutuivat tehtävistä odotetusti erittäin hyvin. Kaiken kaikkiaan ohjelmointitaito osoittautui puutteelliseksi. Aikaisempi tutkimus on osoittanut, että puutteellinen sisältötietojen hallinta on kytköksissä heikkoon opetuksen ja esimerkiksi virheellisten mallien välittämiseen. Tämän takia olisi syytä tarkastella sitä, onko nykyinen opetussuunnitelman ratkaisu sijoittaa ohjelmointiopetus matematiikan oppiaineeseen hyvä, pitäisikö ohjelmoinnilla ja tietojenkäsittelytieteellä olla laajempi rooli matematiikan yliopisto-opinnoissa ja millaisia täydennyskoulutusmahdollisuuksia matematiikan aineenopettajakunnalle tulisi tarjota

    HyperLogLogLog: Cardinality Estimation With One Log More

    Full text link
    We present HyperLogLogLog, a practical compression of the HyperLogLog sketch that compresses the sketch from O(mloglogn)O(m\log\log n) bits down to mlog2log2log2m+O(m+loglogn)m \log_2\log_2\log_2 m + O(m+\log\log n) bits for estimating the number of distinct elements~nn using mm~registers. The algorithm works as a drop-in replacement that preserves all estimation properties of the HyperLogLog sketch, it is possible to convert back and forth between the compressed and uncompressed representations, and the compressed sketch maintains mergeability in the compressed domain. The compressed sketch can be updated in amortized constant time, assuming nn is sufficiently larger than mm. We provide a C++ implementation of the sketch, and show by experimental evaluation against well-known implementations by Google and Apache that our implementation provides small sketches while maintaining competitive update and merge times. Concretely, we observed approximately a 40% reduction in the sketch size. Furthermore, we obtain as a corollary a theoretical algorithm that compresses the sketch down to mlog2log2log2log2m+O(mlogloglogm/loglogm+loglogn)m\log_2\log_2\log_2\log_2 m+O(m\log\log\log m/\log\log m+\log\log n) bits.Comment: 10 pages, 7 figures, KDD '2

    Probabilistic tensors and opportunistic boolean matrix multiplication

    No full text
    We introduce probabilistic extensions of classical deterministic measures of algebraic complexity of a tensor, such as the rank and the border rank. We show that these probabilistic extensions satisfy various natural and algorithmically serendipitous properties, such as submultiplicativity under taking of Kronecker products. Furthermore, the probabilistic extensions enable improvements over their deterministic counterparts for specific tensors of interest, starting from the tensor h2, 2, 2i that represents 2 × 2 matrix multiplication. While it is well known that the (deterministic) tensor rank and border rank satisfy rk h2, 2, 2i = 7 and rk h2, 2, 2i = 7 [V. Strassen, Numer. Math. 13 (1969); J. E. Hopcroft and L. R. Kerr, SIAM J. Appl. Math. 20 (1971); S. Winograd, Linear Algebra Appl. 4 (1971); J. M. Landsberg, J. AMS 19 (2006)], we show that the probabilistic tensor rank and border rank satisfy rk e h2, 2, 2i ≤ 6 + 67 and rk e h2, 2, 2i ≤ 6 + 23 . By submultiplicativity, this leads immediately to novel randomized algorithm designs, such as algorithms for Boolean matrix multiplication as well as detecting and estimating the number of triangles in graphs. Our algorithms are opportunistic in the sense that their worst-case scaling is essentially governed by the probabilistic rank, yet their result is accumulated through independent repetitions, where the partial result can be inspected at each repeat for possible early termination, and each repeat scales according to the rank of the outcome-tensors. For example, representing h2, 2, 2i probabilistically using an ensemble of tensors of rank 6, we obtain an algorithm that, with high probability, multiplies two 2d × 2d Boolean matrices in Õ((6 + 67 )d) operations. This algorithm consists of independent repeats that each run in O(6d) operations and enable inspection of the partial result at each repeat. Analogously, a probabilistic representation of h2, 2, 2i using tensors of border rank 5 gives an algorithm that runs in Õ((6 + 23 )d) operations, consisting of repeats that run in Õ(5d) operations each. Asymptotically, we use Adleman’s argument to show that, over the complex field, the support rank exponent ωs of matrix multiplication [H. Cohn and C. Umans, SODA’12] gives the lower bound ωs ≤ inf τ : rk e ht, t, ti = O(tτ ) for probabilistic tensor rank. While this enables an approach to obtaining asymptotically faster algorithm designs for matrix multiplication via the Cohn-Umans inequality ω ≤ 32 ωs − 1, the main motivation for the present paper is to enable an approach towards fast practical algorithms using small probabilistic tensors.Peer reviewe

    An adaptive prefix-assignment technique for symmetry reduction

    No full text
    This paper presents a technique for symmetry reduction that adaptively assigns a prefix of variables in a system of constraints so that the generated prefix-assignments are pairwise nonisomorphic under the action of the symmetry group of the system. The technique is based on McKay's canonical extension framework (McKay, 1998). Among key features of the technique are (i) adaptability—the prefix sequence can be user-prescribed and truncated for compatibility with the group of symmetries; (ii) parallelizability—prefix-assignments can be processed in parallel independently of each other; (iii) versatility—the method is applicable whenever the group of symmetries can be concisely represented as the automorphism group of a vertex-colored graph; and (iv) implementability—the method can be implemented relying on a canonical labeling map for vertex-colored graphs as the only nontrivial subroutine. To demonstrate the practical applicability of our technique, we have prepared an experimental open-source implementation of the technique and carry out a set of experiments that demonstrate ability to reduce symmetry on hard instances. Furthermore, we demonstrate that the implementation effectively parallelizes to compute clusters with multiple nodes via a message-passing interface.Peer reviewe
    corecore